Auto merge of #4026 - alexcrichton:bare-registry, r=matklad
authorbors <bors@rust-lang.org>
Thu, 11 May 2017 22:05:55 +0000 (22:05 +0000)
committerbors <bors@rust-lang.org>
Thu, 11 May 2017 22:05:55 +0000 (22:05 +0000)
Don't check out the crates.io index locally

This commit moves working with the crates.io index to operating on the git
object layers rather than actually literally checking out the index. This is
aimed at two different goals:

* Improving the on-disk file size of the registry
* Improving cloning times for the registry as the index doesn't need to be
  checked out

The on disk size of my `registry` folder of a fresh check out of the index went
form 124M to 48M, saving a good chunk of space! The entire operation took about
0.6s less on a Unix machine (out of 4.7s total for current Cargo). On Windows,
however, the clone operation went from 11s to 6.7s, a much larger improvement!

Closes #4015


Trivial merge